import axios from 'axios'
//todo 导入配置
const instance = axios.create({
    baseURL: $GlobalConfig.baseUrl,
    timeout: 30000,
    headers: {'X-Custom-Header': 'foobar'},
    
    // `withCredentials` 表示跨域请求时是否需要使用凭证
    // withCredentials: false, // 默认的

    // `auth` 表示应该使用 HTTP 基础验证，并提供凭据
    // 这将设置一个 `Authorization` 头，覆写掉现有的任意使用 `headers` 设置的自定义 `Authorization`头
    // auth: {
    //     username: 'janedoe',
    //     password: 's00pers3cret'
    // },
});


//可选的修改post的Content-Type为表单提交，此时提交的数据需使用QS序列化
// axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

const getApi = function ({url, data}) {
    return instance.request({
        url: url,
        method: 'get',
        params: data,
    })
}

const postApi = function ({url, data}) {
    return instance.request({
        url: url,
        method: 'post',
        data: data,
    })
}

const requestApi = function (config) {
    return instance.request(config)
}

export {
    getApi,
    postApi,
    requestApi
}